Many web-based clients include a spell checking feature to help find spelling errors in a document. In these applications, a user typically invokes a spell checker by selecting a spelling tool option. Typically, the spelling application receives a portion of the document from the client and identifies potentially misspelled words. For every potentially misspelled word, the spelling application sends the portion of the document back to the client along with information indicating the misspelled words. The user may then be prompted to replace, ignore, or edit the word. Typically the spell checker also provides a variety of alternative spellings to choose from. This process continues until the user either expressly exits the spelling tool or the spelling tool finishes checking the document.
This web-based spell checking process can be very inefficient for several reasons. First, the same information may be sent to the client many different times. Additionally, the time it takes to complete the spell checking process may be slower than desired. What is needed is a way to improve the performance spell checking for web-based applications.